package com.example.everying.model.entity.pay;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * @program: everything
 * @description: 转账操作日志表
 * @author: szy
 * @create: 2025-05-14 16:45
 **/
@Data
@TableName("transfer_operation_log")
public class TransferOperationLogEntity implements Serializable {

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @ApiModelProperty(value = "主键ID")
    private Long id;

    @ApiModelProperty(value = "支付渠道ID")
    private Integer channelId;

    @ApiModelProperty(value = "关联批次ID")
    private Long batchId;

    @NotBlank(message = "操作类型不能为空")
    @ApiModelProperty(value = "操作类型")
    private String operationType;

    @NotBlank(message = "操作内容不能为空")
    @ApiModelProperty(value = "操作内容")
    private String operationContent;

    @NotBlank(message = "操作人不能为空")
    @ApiModelProperty(value = "操作人")
    private String operator;

    @NotBlank(message = "操作结果不能为空")
    @ApiModelProperty(value = "操作结果")
    private String operationResult;

    @ApiModelProperty(value = "错误信息")
    private String errorMsg;

    @ApiModelProperty(value = "IP地址")
    private String ipAddress;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
}
